package com.sc.nft.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sc.nft.entity.BoxTakePool;
import com.sc.nft.entity.vo.BoxPoolVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 盲盒抽奖池(sc_box_take_pool)数据Mapper
 *
 * @author 张翔宇
 * @description 盲盒抽奖池
 * @since 2023-04-03 18:03:44
 */
@Mapper
public interface BoxTakePoolMapper extends BaseMapper<BoxTakePool> {

    Page<BoxPoolVO> boxPoolPage(IPage page, @Param("status") Boolean status, @Param("name") String name, @Param("convertScenario") Integer convertScenario, @Param("daoId") Long daoId);

    /**
     * 凭证兑换NFT
     *
     * @param page
     * @param status
     * @param name
     * @return
     */
    Page<BoxPoolVO> voucherConversion(IPage page, @Param("status") Boolean status, @Param("name") String name, @Param("convertScenario") Integer convertScenario, @Param("daoId") Long daoId);

    /**
     * 前端web使用的凭证兑换NFT
     *
     * @param page
     * @param status
     * @param name
     * @return
     */
    Page<BoxPoolVO> voucherWebConversion(@Param("page") Page<BoxPoolVO> page, @Param("status") Boolean status, @Param("name") String name, @Param("convertScenario") Integer convertScenario, @Param("daoId") Long daoId);

    /**
     * 前端web凭证兑换盲盒
     *
     * @param page
     * @param status
     * @param name
     * @return
     */
    Page<BoxPoolVO> boxPoolWebPage(@Param("page") Page<BoxPoolVO> page, @Param("status") Boolean status, @Param("name") String name, @Param("convertScenario") Integer convertScenario, @Param("daoId") Long daoId);
}
